// src/models/global.ts

import type { TreeDataNode } from "antd";
import { useEffect, useState } from "react";
import { getMenuTreeSelect } from "@/services/data";

// export default function useGlobalModel() {
//   const [userInfo, setUserInfo] = useState<any>(null);
//   const [loading, setLoading] = useState<boolean>(true);
//   const [statusOptions, setstatusOptions] = useState<any[]>([]);
//   const loadUserInfo = async () => {
//     setLoading(true);
//     try {
//       const res = await getDicts("");
//       if (res.code === 200) {
//         setUserInfo(res.data);
//       }
//     } catch (e) {
//       console.error("获取用户信息失败：", e);
//     } finally {
//       setLoading(false);
//     }
//   };

//   useEffect(() => {
//     // 页面初始化时加载
//     loadUserInfo();
//   }, []);

//   return {
//     userInfo,
//     loading,
//     reloadUserInfo: loadUserInfo, // 手动刷新
//   };
// }
const resetData = (data: any[]): TreeDataNode[] =>
  data.map((item) => ({
    title: item.label,
    value: item.id,
    key: item.id,
    children: resetData(item.children || []),
  }));
export const useMenuOptions = () => {
  const [menuTreeData, setMenuTreeData] = useState<any[]>([]);
  const fetchMenuOptions = async () => {
    try {
      const res = await getMenuTreeSelect();
      if (res.code === 200) {
        console.log(res);
        setMenuTreeData(resetData(res.data));
      }
    } catch (e) {
      console.error("获取菜单类型失败：", e);
    }
  };

  useEffect(() => {
    fetchMenuOptions();
  }, []);
  return [menuTreeData];
};
